Summary

Row

Daily Hospitalizations (Frequency)

Daily Hospitalizations (Proportion)

Row

Daily Deaths (Frequency)

Daily Deaths (Proportion)

U.S.

Row

Daily Hospitalizations (Frequency)

Daily Hospitalizations (Proportion)

Row

Daily Deaths (Frequency)

Daily Deaths (Proportion)

Thailand

Row

Daily Hospitalizations (Frequency)

Daily Hospitalizations (Proportion)

Row

Daily Deaths (Frequency)

Daily Deaths (Proportion)

Guatemala

Row

Daily Hospitalizations (Frequency)

Daily Hospitalizations (Proportion)

Row

Daily Deaths (Frequency)

Daily Deaths (Proportion)

---
title: "COVID-19"
author: "Ekarin Eric Pongpipat, M.A."
output: 
  flexdashboard::flex_dashboard:
    orientation: rows
    social: menu
    source_code: embed
    theme: lumen
    vertical_layout: scroll
---

```{r setup, include=FALSE}
#runtime: shiny
knitr::opts_chunk$set(out.width = '100%', out.height = '100%')
packages <- c("tidyverse", "covid19us", "tidyselect", "plotly", "TTR", "glue")
xfun::pkg_attach2(packages, message = F)
options(scipen=999)
```

```{r data}
base_dir <- "~/Desktop/func_test/covid19"
df <- read.csv(glue("{base_dir}/data/data.csv")) %>%
  as_tibble() %>%
  mutate(date = as.Date(date))
```

```{r viz}
viz <- function(data, regions = 'all', metrics,
                smooth_value = TRUE,
                proportion_value = TRUE) {
  
  if (regions == 'all') {
    df_fig <- data
  } else {
    df_fig <- data %>%
      filter(region %in% regions)
  }
  
  df_fig <- df_fig %>%
    filter(
      metric %in% metrics,
      smooth == smooth_value,
      proportion == proportion_value
    )
  
  #print(region_end)
  
  fig <- ggplot(df_fig, aes(date, value, color = region)) +
    geom_line() +
    labs(x = "\nDate",
         color = "Region") + 
    theme_minimal() #+
    #scale_y_continuous(sec.axis = sec_axis(~ ., breaks = region_end))

  
  if (proportion_value == FALSE) {
    fig <- fig +
      labs(y = "No. of People\n")
  } else {
    fig <- fig +
      labs(y = "% of Respective Population\n") +
      scale_y_continuous(labels = scales::percent)
  }
  return(fig)
  
}
```

Summary
====

Row
----

### Daily Hospitalizations (Frequency)

```{r}
viz(df, 'all', "daily_total_hospitalizations", T, F)
```

### Daily Hospitalizations (Proportion)

```{r}
viz(df, 'all', "daily_total_hospitalizations", T, T)
```

Row
----

### Daily Deaths (Frequency)

```{r}
viz(df, 'all', "daily_deaths", T, F)
```

### Daily Deaths (Proportion)

```{r}
viz(df, 'all', "daily_deaths", T, T)
```

U.S.
====

Row
----

### Daily Hospitalizations (Frequency)

```{r}
viz(df, c('CA', 'TX', 'LA County', 'Dallas County'), "daily_total_hospitalizations", T, F)
```

### Daily Hospitalizations (Proportion)

```{r}
viz(df, c('CA', 'TX', 'LA County', 'Dallas County'), "daily_total_hospitalizations", T, T)
```

Row
----

### Daily Deaths (Frequency)

```{r}
viz(df, c('CA', 'TX', 'LA County', 'Dallas County'), "daily_deaths", T, F)
```

### Daily Deaths (Proportion)

```{r}
viz(df, c('CA', 'TX', 'LA County', 'Dallas County'), "daily_deaths", T, T)
```

Thailand 
====

Row
----

### Daily Hospitalizations (Frequency)

```{r}
viz(df, c('Thailand'), "daily_total_hospitalizations", T, F)
```

### Daily Hospitalizations (Proportion)

```{r}
viz(df, c('Thailand'), "daily_total_hospitalizations", T, T)
```

Row
----

### Daily Deaths (Frequency)

```{r}
viz(df, c('Thailand'), "daily_deaths", T, F)
```

### Daily Deaths (Proportion)

```{r}
viz(df, c('Thailand'), "daily_deaths", T, T)
```

Guatemala
====

Row
----

### Daily Hospitalizations (Frequency)

```{r}
viz(df, c('Guatemala'), "daily_total_hospitalizations", T, F)
```

### Daily Hospitalizations (Proportion)

```{r}
viz(df, c('Guatemala'), "daily_total_hospitalizations", T, T)
```

Row
----

### Daily Deaths (Frequency)

```{r}
viz(df, c('Guatemala'), "daily_deaths", T, F)
```

### Daily Deaths (Proportion)

```{r}
viz(df, c('Guatemala'), "daily_deaths", T, T)
```